#ifndef __CT_LOG_MARCO_H__
#define __CT_LOG_MARCO_H__

#include "Zebra.h"

#define CT_TRACE(fmt, args...)  if (Zebra::logger) Zebra::logger->trace(fmt, ##args)
#define CT_DEBUG(fmt, args...)  if (Zebra::logger) Zebra::logger->debug(fmt, ##args)
#define CT_INFO(fmt, args...)  if (Zebra::logger) Zebra::logger->info(fmt, ##args)
#define CT_WARN(fmt, args...)  if (Zebra::logger) Zebra::logger->warn(fmt, ##args)
#define CT_ERROR(fmt, args...)  if (Zebra::logger) Zebra::logger->error(fmt, ##args)
#define CT_FATAL(fmt, args...)  if (Zebra::logger) Zebra::logger->fatal(fmt, ##args)
#define CT_PANIC(fmt, args...)  if (Zebra::logger) Zebra::logger->panic(fmt, ##args)


#define CT_STAT(fmt, args...)   if (Zebra::stat) Zebra::stat->info(fmt, ##args)

#endif // __CT_LOG_MARCO_H__
